Unity功能点 |
您所在的位置:网站首页 › 结束 unity › Unity功能点 |
温故而知新。 记录一下CrossFade的方法使用,主要用作跳转到指定动画的一个方法 先添加一个动画控制器,把需要的动画添加进去,不需要添加任何逻辑关系: 官方一个案例附带的动画,下面是控制代码: using UnityEngine; public class Test : MonoBehaviour { public AnimationClip[] clips; public Animator anim; public int Index; private void Update() { AnimationChange(); } public void AnimationChange() { if (Input.GetKeyDown(KeyCode.UpArrow)) { if (Index > 0) { Index -= 1; } else { Index = clips.Length - 1; } Debug.Log(string.Format("CurrentClip:{0}", clips[Index].name)); } if (Input.GetKeyDown(KeyCode.DownArrow)) { if (Index < clips.Length - 1) { Index += 1; } else { Index = 0; } Debug.Log(string.Format("CurrentClip:{0}", clips[Index].name)); } if (Input.GetKeyDown(KeyCode.Space)) { ResetState(); anim.CrossFade(clips[Index].name, 0, 0, 0); } } protected void ResetState() { transform.position = Vector3.zero; transform.rotation = Quaternion.identity; } }我把脚本挂在人物上,把动画控制器和对应的动画手动赋值,运行效果如下: 可以看到用这个方法可以达到直接跳转到指定动画,我这里设置的参数是跳转动画从头开始播放,具体大家可以尝试一下。 欢迎加群:4364930讨论。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |